home *** CD-ROM | disk | FTP | other *** search
- S o u n d C o n
- =================
- version 1.42, 2-04-95
- by Rick Hudson
-
-
- This software is FreeWare. It must only be distrubuted in its original form.
- The PlaySample module is also FreeWare and can be used in other applications
- but you must obtain my permission if you wish to distribute it separately
- from SoundCon.
-
-
-
- Summary
- =======
-
- SoundCon is an application for basic sound sample format conversion on the
- Archimedes. It can read and write samples in a variety of formats common on
- various computer platforms and can directly playback most the formats it can
- read (without converting it first). An important feature of SoundCon is that
- all processing and playback is done from disc meaning that the only memory
- required is for the application itself and there is no limit to the sample
- size.
-
- As of version 1.40 SoundCon can respond to render requests from ArcWeb so
- that WWW sounds can be played by just clicking on them.
-
-
- Other documentation
- ===================
-
- The Docs directory within !SoundCon conatins further information on the
- PlaySample module and the various sound formats supported. The latter
- contains format descriptions, what sub-formats are and aren't supported and
- which ones can be played without conversion.
-
- Interactive help is supported. Theoretically, you should be able to stop
- reading this now and use that.
-
-
- Supported formats
- =================
-
- Major formats sub-formats
-
- Audio IFF 8/16 bit, mono/stereo
- Armadeus n/a
- ARMovie (read only) 8/16 bit, (un)signed linear, VIDC, mono/stereo
- Sun Audio 8 bit µ-law, 8 bit lin, 16 bit lin, mono/stereo
- AudioWorks 8/16 bit (un)signed, µ-law, VIDC, mono/stereo
- IFF/8SVX n/a
- VOC n/a
- Voice modules 4 volume modes, fixed/var frequency, voice/transient
- RIFF WAVE 8/16 bit PCM, µ-law, MS ADPCM, DVI ADPCM, mono/stereo
- Raw data 8/16 bit, (un)signed linear, µ-law, VIDC, mono/stereo
-
- For more information on these formats see the file Docs.Formats which
- describes in more details what the formats can support and what the menu
- sub-options do.
-
-
- ==============
- Using SoundCon
- ==============
-
- Loading a sample:
- ================
-
- SoundCon is sample converter so it can't do anything until you give a
- sample. Drag a file onto the icon bar icon or any of it's windows to 'open'
- the sample. The settings of the preferences may cause some actions to happen
- automatically at this point (see later) but the default is not do anything
- except open the sample information window (click select on the icon bar icon
- to open it if you need to). This window displays information about the file
- loaded. If the format is not recognised (or a recognisable format is
- unsupported - WAVEs have several such formats) then an error message is
- reported and sample is loaded as raw data.
-
-
- Changing the interpretation:
- ===========================
-
- Recognised formats will not usually have to be fiddled with but raw data
- will probably have to have the interpretation of the data changed to make
- it sound right - this is largely a trial and error process.
-
- At the bottom of the sample info window (click on Toggle Size or scroll
- down) there is the interpretation format and frequency - use the pop-up
- menus to change these. The format selections are summarised by interactive
- help (if your version of RISC OS isn't too old) and described in more detail
- in the file docs.Formats.
-
- The interpretation frequency set how many sample frames per second to
- assume. A sample frame is the samples on all channels at any given point and
- so frames per second means samples per channel per second. The menu provides
- a list of common frequencies as well as a writable entry for other
- frequencies.
-
-
- Listening to the sample
- =======================
-
- The playback control window can be opened by clicking Adjust on the icon bar
- icon, clicking Adjust in the sample info window or by selecting the menu
- item in the sample info window or icon bar menus. The sample will be played
- based on the format and frequency set in the Interpret As section of the
- sample info window. An exception to this are samples that cannot be
- interpreted as raw data by SoundCon (ADPCM and Audioworks formats) which can
- only be played in their original format.
-
- The CD-style buttons control the playback and their use should be obvious.
- The slider marking the sample progress can be dragged around as an
- alternative to setting the sample position with the cue and rewind buttons.
-
- The volume slider controls the volume and the speaker button toggles the
- speaker on and off (as if that wasn't obvious). If the volume is changed or
- the speaker toggled from another application then SoundCon updates the
- volume slider and speaker button automatically. Note though that the volume
- is independant of the normal system volume so other system-volume
- controllers will have no effect.
-
- Note that the ADPCM play routines are quite CPU intensive (since they
- decompress on the fly) and the sound quality will probably suffer when
- interrupts are used heavily (eg lots of disc activity).
-
-
- Converting the sample to another format
- =======================================
-
- Open the conversion window from the info window or icon bar menus. The
- current destination format is shown with the usual elements of a save box.
- Change the format, sample rate and filename (if current settings are not
- suitable) and drag the icon to where you want the new sample to be or click
- OK/press Return if a complete path is already present. The conversion
- progress window will open and the conversion will occur in the background.
- The conversion can be paused if you need the computer to be more responsive
- for a while or aborted by clicking the appropriate button.
-
- The filename initially present in the convert window will depend on the
- preferences (see Preferences for options).
-
- The conversion produces a sample (in the specified format) so that playing
- it at the speed set in the 'Rate' box will sound the same as the original
- sample played at the speed set the 'Frequency' box of the 'Interpret As'
- section. That is, the sample is resampled at the new frequency. If the
- frequencies are different then new samples are generated by linearly
- interpolating between the original samples.
-
- See the file Docs.Formats for a description of the supported formats and
- their sub formats.
-
-
- Preferences
- ===========
-
- Default Conversion format: This controls what output format will initially
- be in the conversion save box when the program is loaded. This format may
- also be set on loading a new sample (see Auto Load Actions below). The
- effect of these settings is described in 'Converting a sample' above.
-
- Interpret Unknown As: When an unrecogised sample is loaded, the data will be
- initially interpreted according the settings in this box. The pop-up menus
- are identical to those for the Interpret As part of the info window (see
- 'Changing The Interpretation' above).
-
- Auto Actions On Load: Any combination (including none) of the following
- actions are performed when a new sample is opened.
-
- - Open info window: The window displaying the information on the sample is
- opened.
-
- - Open convert window: The conversion/save window is opened.
-
- - Open play window: The play control window is opened.
-
- - Default format: The format and frequency used for the output sample is
- set from the Default Conversion Format part of the preferences.
-
- - Convert: The conversion process is started using the format and filename
- determined from other preference settings.
-
- - Play: The sample is played back.
-
- If either convert or play (or both) are selected then the sample is cleared
- after their respective operation has completed to allow the next queued
- sample to be processed automatically. If convert AND play are selected then
- the sample is cleared after both have finished.
-
- Sound: This section specifies how to set up the sound system on loading
- SoundCon:
-
- - Set volume: If this option is set then the playback volume is set
- according the slider below otherwise it is left unchanged. Note that
- this only affects the volume for the PlaySample module which is
- independant of the normal system volume.
-
- - Don't set speaker: The speaker is left in the current state (on or off).
-
- - Speaker off: The speaker is switched off.
-
- - Speaker on: The speaker is switched on.
-
- File naming: These options control what filename will appear in the
- conversion/save box when a new sample is opened:
-
- - Do not update name: The writable icon is left the same as when it was
- last used.
-
- - New leaf with previous path: Everything up to the last '.' is preserved
- and remainder (the leaf) is replaced with the leaf name of the source
- sample. This is the only useful file naming option for queue processing.
-
- - New leaf-only name: The filename is set to the leaf name of the source
- sample.
-
- - Add/change extentions: When this option is set an extension of the form
- '/XXX' is appended to the filename (after one is generated from the
- above options). XXX is an MS-DOS like abbreviation like WAV, AIF, RAW
- etc. The leaf is not truncated to 10 characters in case you want to copy
- it to a filing system supporting longer filenames.
-
- General: Miscellaneous options
-
- - D-click load: SoundCon repsonds to the Dataload message allowing it to
- load samples by double clicking on them. It attempts to load any file
- that is 'launched'. If it recognises it loads it otherwise it is ignored
- so oher applications still get a look in.
-
- - ArcWeb render: When this option is set, SoundCon responds to rendering
- requests from ArcWeb. If the file to be rendered is a recognised sound
- format and SoundCon is idle then it will be loaded and played.
-
- If the auto-convert option and 'New leaf with previous path' is not selected
- then a warning is displayed when you exit the preferences window because
- queue processing can only be done with that option set. (no update can be
- used but all the samples will overwrite each other!)
-
-
- Queue processing
- ================
-
- SoundCon can process a queue of samples as well as single samples; this is
- so that a whole bunch of samples can be converted without user intervention.
- The restrictions are that all the samples in the batch will be converted to
- the same format and will all be placed in the same directory.
-
- A sample may be explicitly loaded into the queue by dragging one into the
- queue window (opened from the icon bar menu). If more than one sample is
- dragged to into SoundCon then the first will be dealt with normally (ie as
- if it was a single file) and the rest will be queued automatically.
-
- The queue works on the principle that when there is no sample open the one
- at the front of the queue is opened (and removed from the queue). The
- current sample will be cleared (and the first one queued opened) when:
-
- - You clear it manually from the menu in the Sample Info window.
- - A sample has finished converting and the 'Auto Actions on Load/Convert'
- option is set from the preferences.
- - A sample has finished playing and the 'Auto Actions on Load/Play' option
- is set from the preferences.
-
- The last two (auto-clear) instances do not occur if the queue is empty so
- that the last sample in the queue remains the current sample.
-
- This means all the files in the queue can be converted or played (or both)
- automatically.
-
- So if SoundCon is set to auto-convert on load, all the files in the queue
- will convert automatically. Note however that when the first file is opened
- the warning message 'To save, drag the file to a directory display' is
- displayed. The first file needs to be dragged manually to determine where to
- save the samples. You should also select what you want them all converted
- to at this point. A result of this is that conversion can only progress
- automatically if the file naming method is set to 'New leaf with previous
- path' otherwise the warning will be given for every file or the files will
- all have the same name and overwrite each other. If you select auto-convert
- and the file naming is set to something inappopriate, you are warned.
-
- You will need to change the format and output path (if necessary) before you
- load the queue a second time because there will now be suitable defaults to
- begin conversion immediately. Alternatively, clear the filename or the entire
- sample to set things up after the queue is loaded.
-
-
- Using SoundCon with ArcWeb
- ==========================
-
- From version 1.40 SoundCon can play samples for ArcWeb by responding to its
- rendering requests. The 'ArcWeb render' preference must be set and SoundCon
- must be idle (ie not converting or playing another sample) to repsond to
- ArcWeb requests because it 'loads' the sound as its current sound which would
- mean halting any previous activity. While the sound is 'loaded' it can be
- converted/saved or played again until a new sound is loaded or it disappears
- from the ArcWeb cache.
-
-
- History
- =======
-
- 1.30 - First release
-
- 1.40 - Cleaner logarithmic sound conversion
- - Cleaned up glitches on standard-res monitors
- - Added read-only ARMovie format
- - Added ArcWeb sound playing
- - Sun Audio files with zero data length can now be loaded
- - Lowered lower frequency limit after discovering some 5Khz samples
- - First button in preference window now works. (how'd that happen?!)
- - Mouse is now constrained when dragging sliders
- - Doesn't crash if sample disappears between loading and converting
-
- 1.41 - Made Arcweb rendering optional
- - Dataload option added to allow loading by double-clicking
- - Made preference window resizable
-
- 1.42 - Fixed bug re dragging play slider on 16-bit samples
- - Dragging to playback window when already playing now plays
- - Changing format with 'extensions' on now works
-
-
- Problems?
- =========
-
- I have tried to ensure that SoundCon can process a wide variety of sample
- formats and sub-formats and because of this it has been hard to find original
- files to test them all with. Please let me know if you encounter a sample
- that SoundCon doesn't process correctly; several small bugs have been fixed
- between versions 1.30 and 1.40 because of this kind of feedback. I'd also be
- interested to hear if there are any other unsupported formats that could be
- included in SoundCon's repertoire; bearing in mind that I need some
- information about the format before I can implement it.
-
-
-
- Thanks to Andrew (adh1003@hermes.cam.ac.uk) for testing and help with the
- logarithmic formats.
-
- Thanks also to Stewart Brodie (S.N.Brodie@ecs.soton.ac.uk) for suggesting the
- ArcWeb addition and supplying the code outline to do it with.
-
-
- Rick Hudson,
- rick@actrix.gen.nz
-